package com.leyou.entity;

import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;

import java.util.Date;

/**
 * 购物车mongo集合对应的实体类
 */

/**
 使用spEL表达式动态获取集合名称
 - `#{}`：代表spEL表达式
 - `@collectionNameBuilder`：从spring容器中寻找名为`collectionNameBuilder`的bean
 - `.build()`：调用`build()`方法
 */
@Data
@Document("#{@collectionNameBuilder.build()}")
public class CartItem{
    @Id
    //加上jsonIgnore是返回给前端的时候把这两个字段忽略，因为前台不需要这两个字段
    @JsonIgnore
    private String id;
    @JsonIgnore
    private Long userId;
    private Long skuId;// 商品id
    private String title;// 标题
    private String image;// 图片
    private Long price;// 加入购物车时的价格
    private Integer num;// 购买数量
    private String spec;// 商品规格参数
    private Date updateTime;// 更新时间

}